<?php
ini_set('date.timezone','Asia/Shanghai');
header("content-type:text/html;charset=utf-8");
echo date('h:i:s') . "<br />";
echo $_SERVER['HTTP_USER_AGENT'] . "<br /><br />";//用户浏览器的性能配置详细
// $browser = get_browser(null,true);
// print_r($browser);
//暂停 10 秒
// sleep(10);
//重新开始
// echo date('h:i:s');
$age=array("Bill"=>"63","Steve"=>"56","Elon"=>"47");
krsort($age); //升序排序
var_dump($age);
echo '<br>';
$age=array("Bill"=>"63","Steve"=>"56","Elon"=>"47");
arsort($age);//降序排序
var_dump($age);

// 定义变量并设置为空值
// $name = $email = $gender = $comment = $website = "";
// test_input() 函数检查每个 $_POST 变量
// （通过 PHP trim() 函数）去除用户输入数据中不必要的字符（多余的空格、制表符、换行）
// （通过 PHP stripslashes() 函数）删除用户输入数据中的反斜杠（\）
// if ($_SERVER["REQUEST_METHOD"] == "POST") {
//   $name = test_input($_POST["name"]);
//   $email = test_input($_POST["email"]);
//   $website = test_input($_POST["website"]);
//   $comment = test_input($_POST["comment"]);
//   $gender = test_input($_POST["gender"]);
// }
echo '<br>';
function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);//删除反斜杠
  $data = htmlspecialchars($data);
  $data = trim($data);
  return $data;
}
$number = 'ruhcuroejaosdjdadk';
$name = '名字';//换成字符则生效
$name = test_input($name);
//preg_match() 函数检索字符串的模式，如果模式存在则返回 true，否则返回 false。
//PHP - 验证名字  只允许字符串的和字母的格式
if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
  $nameErr = "只允许字母和空格！"; 
  echo $nameErr;
}
// PHP - 验证 E-mail
$email = test_input('2350768356@qq.com');
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {
  $emailErr = "无效的 email 格式！"; 
}
// PHP - 验证 URL
$website = test_input('https://u.yiikii.com/');
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%
=~_|]/i",$website)) {
  $websiteErr = "无效的 URL"; 
}

echo '<br>';
$d=strtotime("10:38pm April 15 2015");
echo "创建日期是 " . date("Y-m-d h:i:sa", $d);

echo '<br>';
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>";

$d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>";

$d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";


echo '<br>';
// 				cookies是客户端保持状态的方案
// setcookie("user", "Admin", time()+3600);//3600秒 一个小时后过期
// echo $_COOKIE["user"];
echo '<br>';
// var_dump($_COOKIE);
if (isset($_COOKIE["user"]))//isset()判断是否设置了cookie中的user
  echo "Welcome " . $_COOKIE["user"] . "!<br />";
else
  echo "Welcome guest!<br />";

echo '<br>';
// setcookie("user", "", time()-3600);
session_start();  //session 主要是服务端保持状态的解决方案
$_SESSION['view'] = 1;

$session = $_SESSION['view'];
session_destroy();
// echo $session;

echo '<br>';
//创建可抛出一个异常的函数  它检测数字是否大于 1。如果是，则抛出一个异常。
function checkNum($number){
	if($number>1){//如果$number数值大于1的话 就抛出异常
		throw new Exception("Value must be 1 or below");
	}
	return true;
}
//在 "try" 代码块中触发异常  在try里面执行异常的处理
try{
	checkNum(2);//
	//If the exception is thrown, this text will not be shown
	echo 'If you see this, the number is 1 or below';
}

//捕获异常
catch(Exception $e){
	echo 'Message: ' .$e->getMessage();
}


?>